package com.briup.jdk8.day02;

import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

/**
 * Stream的应用
 */
public class Test1 {
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<>();
        Collections.addAll(list,1,2,3,4,5,6,7,8,9,10);
        // 在list中找到所有奇数，然后倒序输出得到一个集合
        List<Integer> l = new ArrayList<>();
        for(int i = list.size()-1;i>=0;i--){
            Integer element = list.get(i);
             if(element % 2 !=0 ){
                l.add(element);
             }
        }
        System.out.println("l = " + l);

        // 使用Stream对集合list进行操作
        // 获得Stream对象，调用集合的stream方法
        Stream<Integer> stream = list.stream();
        List<Integer> l2 = stream.filter(s -> s % 2 != 0)// 过滤
                .sorted((o1, o2) -> o2 - o1)//排序
                .collect(Collectors.toCollection(LinkedList::new));
        System.out.println("l2 = " + l2);
        l2.forEach(System.out::println);
    }
}
